1. Field of the Invention
This invention generally relates to data processing systems and more specifically to a method and apparatus for enhancing the performance of magnetic storage devices under different operating conditions.
2. Description of Related Art
Data storage devices useful in digital data processing systems generally fall into different media categories. These categories can be ranked in terms of slowest to fastest response times as: (1) magnetic tape storage units; (2) optical storage units; (3) magnetic disk storage devices; and (4) digital random access memory (DRAM) storage devices. System administrators allocate different ones of these data storage devices or resources depending upon their relevance to a particular application.
Devices within a media category can also have different response times. This is particularly true with magnetic disk storage devices. In some situations the differences are a matter of mechanical and electronic design. For example, a smaller physical disk may have better performance than a larger physical disk due to reduced rotational latency in the smaller physical disk. Even within a common design, performance differences can be observed based upon file formatting or file structure. For example, monitored performance during reading operations may be reduced in a striped format versus a non-striped format because overlapping seek operations can be performed in a striped format. The performance in a mirrored system may be less favorable than in a non-mirrored system. In other redundant storage systems, access to data in a parity-based format may be degraded compared to access to data in a non-parity format.
In still other applications, a single physical magnetic disk storage unit or volume may contain multiple logical volumes. Such physical volumes are often called "hypered" volumes. In certain applications a non-hypered volume may exhibit better performance than a hypered volume, as when different applications make simultaneous accesses to the multiple logical volumes on a single physical volume. A log structured file format stores data in random, noncontiguous blocks on one or more physical disks.
A particular file, that is an application program or a related data file, may be stored in accordance with any of the foregoing formats or some combination thereof. For example, a logical volume may be stored in either a non-hypered, striped format or as a non-hypered, non-striped format.
Often times applications access data from locations sequentially. That is, an application may read or write data from or to a number of storage locations in sequence. With larger logical volumes this may involve transfers to or from a plurality of storage tracks in succession. In such operations attempts to read data in a logical volume with a log structured format produces the slowest response time. Conversely, if write operations are to random locations optimal performance may be achieved by storing the data in a log structured format.
With all the foregoing available diverse formats, it is difficult to predict which of these formats will produce the best overall performance. Typically, however, a system administrator uses a priori knowledge about anticipated operations to select one specific format. Hence the file or volume is optimized for the most likely operations, but will run sub-optimally for other operations. For example, if it is believed that random write operations will be the predominant mode of operation, a system administrator might select a log structured file format or a striped parity file format. However, if there are intervals at which sequential accesses will be encountered, the systems will run sub-optimally with respect, for example, to a mirrored, non-striped format. Notwithstanding this disadvantage, this continues to be the method by which the selection of a format for an individual logical volume or file is made.